﻿
using PublicClass;
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace S.Services.SheepMale.Domain.PurchaseSales
{
    /// <summary>
    /// 个体销售
    /// </summary>
    [Table("EntityMarket")]
    public class EntityMarket:AuditFields
    {
        /// <summary>
        /// 销售编号
        /// </summary>
        [Key]
        public int MarketId { get; set; }
        /// <summary>
        /// 销售日期
        /// </summary>
        public DateTime? MarketDate { get; set; }
        /// <summary>
        /// 单据号
        /// </summary>
        [StringLength(50)]
        public string? DocumentNumber { get; set; }
        /// <summary>
        /// 耳号
        /// </summary>
        public string? Earbugles { get; set; }
        /// <summary>
        /// 客户
        /// </summary>
        public string? Client { get; set; }
        /// <summary>
        /// 仓库
        /// </summary>
        public string? Stash { get; set; }
        /// <summary>
        /// 只数
        /// </summary>
        public int SheepNumber { get; set; }
        /// <summary>
        /// 总成交价
        /// </summary>
        public decimal TotalPrice { get; set; }
        /// <summary>
        /// 审核状态
        /// </summary>
        public int AuditState { get; set; }
        /// <summary>
        /// 部门
        /// </summary>
        public string? DepartmentId { get; set; }
        /// <summary>
        /// 成交价
        /// </summary>
        public decimal PayPrice { get; set; }
        /// <summary>
        /// 定价
        /// </summary>
        public decimal FixPrice { get; set; }
        /// <summary>
        /// 等级
        /// </summary>
        public string? Level { get; set; }
        /// <summary>
        /// 品种
        /// </summary>
        public string? Breed { get; set; }
        /// <summary>
        /// 性别
        /// </summary>
        public int? SheepSex { get; set; }
        /// <summary>
        /// 羊只类型
        /// </summary>
        public string? SheepTypeInfo { get; set; }
        /// <summary>
        /// 繁殖状态
        /// </summary>
        public string? Propagate { get; set; }
        /// <summary>
        /// 栋舍
        /// </summary>
        public string? CottageName { get; set; }
        /// <summary>
        /// 栏位
        /// </summary>
        public string? FieldName { get; set; }
        /// <summary>
        /// 出生日期
        /// </summary>
        public DateTime? BirthDay { get; set; }
        /// <summary>
        /// 出生重量(kg)
        /// </summary>
        public decimal Birthweight { get; set; }
        /// <summary>
        /// 断奶重量(kg)
        /// </summary>
        public decimal Weaningweight { get; set; }
        /// <summary>
        /// 父耳号
        /// </summary>
        public string? FatherEar { get; set; }
        /// <summary>
        /// 母耳号
        /// </summary>
        public string? MomtherEar { get; set; }
        /// <summary>
        /// 月龄
        /// </summary>
        public int? MonthAge { get; set; }
        /// <summary>
        /// 收货地址
        /// </summary>
        [StringLength(50)]
        public string? MarketAddress { get; set; }
        /// <summary>
        /// 销售员
        /// </summary>
        [StringLength(50)]
        public string? SellPeople { get; set; }
        /// <summary>
        /// 审核人
        /// </summary>
        [StringLength(50)]
        public string? ExamineBy { get; set; }
        /// <summary>
        /// 审核时间
        /// </summary>
        public DateTime? ExamineDate { get; set; }
        /// <summary>
        /// 财务审核人
        /// </summary>
        [StringLength(50)]
        public string? FinanceBy { get; set; }
        /// <summary>
        /// 财务审核时间
        /// </summary>
        public DateTime? FinanceDate { get; set; }
        /// <summary>
        /// 仓库审核人
        /// </summary>
        [StringLength(50)]
        public string? StashBy { get; set; }
        /// <summary>
        /// 仓库审核时间
        /// </summary>
        public DateTime? StashDate { get; set; }
    }
}
